package com.jcfk.eam.domain.dto.base;

import com.jcfk.system.domain.dto.BaseDTO;

import java.util.List;

import org.hibernate.validator.constraints.Length;

import lombok.Data;

import java.util.Date;

/**
 * 人员管理权限
 *
 * @author libinghai
 * @email 35738025@gqq.com
 * @date 2024-08-20
 */
@Data
public class EamPersonPowerDTO extends BaseDTO {

    private static final long serialVersionUID = 1L;

    /**
     * 数据版本号
     */
    private Long version;

    /**
     * 资产大类
     */
    private Integer assetKind;

    /**
     * 用户主键
     */
    @Length(max = 255, message = "用户主键长度不能超过255")
    private String userId;

    /**
     * 用户工号
     */
    @Length(max = 255, message = "用户工号长度不能超过255")
    private String userEmpNo;

    /**
     * 用户姓名
     */
    @Length(max = 255, message = "用户姓名长度不能超过255")
    private String userName;

    /**
     * 部门主键
     */
    @Length(max = 32, message = "部门主键长度不能超过32")
    private String departmentId;

    /**
     * 部门名称
     */
    @Length(max = 50, message = "部门名称长度不能超过50")
    private String departmentName;

    /**
     * 管理区域
     */
    @Length(max = 500, message = "管理区域长度不能超过500")
    private String manageLocation;

    /**
     * 管理资产类型
     */
    @Length(max = 500, message = "管理资产类型长度不能超过500")
    private String manageAssetType;

    /**
     * 是否启用
     */
    private Integer enabled;

    /**
     * 删除标识
     */
    private Integer deleted;

    /**
     * 创建人
     */
    @Length(max = 50, message = "创建人长度不能超过50")
    private String createdUserName;

    /**
     * 更新人
     */
    @Length(max = 50, message = "更新人长度不能超过50")
    private String lastUpdatedUserName;

    /**
     * 资产权限
     */
    private List<EamPersonAssetPowerDTO> assetPowerList;

    /**
     * 位置权限
     */
    private List<EamPersonLocationPowerDTO> locationPowerList;

    /**
     * 批量删除id
     */
    private List<String> ids;
}
